Skip to content

FEAT: x86_64 (Intel) Support for MacOS#82

Merged
bewithgaurav merged 5 commits into
mainfrom
bewithgaurav/macos_intel_support
Jun 19, 2025
Merged

FEAT: x86_64 (Intel) Support for MacOS#82
bewithgaurav merged 5 commits into
mainfrom
bewithgaurav/macos_intel_support

Conversation

@bewithgaurav

@bewithgaurav bewithgaurav commented Jun 18, 2025

Copy link
Copy Markdown
Collaborator

Summary

This pull request introduces license files for the Microsoft ODBC Driver 18 for SQL Server and updates the README.md for mssql_python/pybind to clarify supported architectures and improve build instructions.

License File Additions:

  • Added the full Microsoft Software License Terms for the ODBC Driver 18 for SQL Server to both mssql_python/libs/macos/arm64/share/doc/msodbcsql18/LICENSE.txt and mssql_python/libs/macos/x86_64/share/doc/msodbcsql18/LICENSE.txt. These files outline usage rights, distribution requirements, and legal disclaimers.

Documentation Updates:

  • Updated README.md in mssql_python/pybind to specify supported architectures for Windows and MacOS:
    • Added a note clarifying support for Windows x64 and ARM64.
    • Added a note clarifying support for Apple Silicon (ARM64) and Intel-based processors (x86_64) on MacOS.
  • Adjusted the MacOS build instructions to remove the restriction to arm64 and allow detection of system architecture during the build process.

Issue Reference

Fixes AB#34976

Checklist

  • Tests Passed (if applicable)
  • Code is formatted
  • Docs Updated (if necessary)

Testing Performed

  • Unit Tests

@bewithgaurav

Copy link
Copy Markdown
Collaborator Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

Comment thread mssql_python/pybind/ddbc_bindings_mac.cpp
gargsaumya
gargsaumya previously approved these changes Jun 19, 2025
### Summary  
This pull request adds a new job to the `pr-validation-pipeline.yml`
file to enable running Python tests on macOS. The job includes steps for
setting up the environment, installing dependencies, building bindings,
running tests with coverage, and publishing results. Some Docker-related
steps are commented out for now.

### Additions to the pipeline:
* **New job for macOS testing**: Added a `PytestOnMacOS` job to the
pipeline, which uses the `macos-latest` image to run Python tests.
* **Python environment setup**: Configured the job to use Python 3.13.5
and installed dependencies from `requirements.txt`.
* **Build and test execution**:
  - Built pybind bindings via `build.sh`.
  - Ran `pytest` with coverage and published the results.

### Commented-out Docker-related steps:
* Steps for installing and configuring Docker on macOS, including
setting up Colima and running an SQL Server container, are included but
commented out for now.

### Issue Reference  
Fixes
[AB#37749](https://sqlclientdrivers.visualstudio.com/c6d89619-62de-46a0-8b46-70b92a84d85e/_workitems/edit/37749)

### Checklist  
- [x] **Tests Passed** (if applicable)  
- [x] **Code is formatted**   
- [x] **Docs Updated** (if necessary) 

### Testing Performed  
<!-- How was this fix tested? -->
- [x] Unit Tests
sumitmsft
sumitmsft previously approved these changes Jun 19, 2025
gargsaumya
gargsaumya previously approved these changes Jun 19, 2025
@bewithgaurav bewithgaurav changed the base branch from bewithgaurav/row_cursor_mac to main June 19, 2025 12:42
@bewithgaurav bewithgaurav dismissed stale reviews from gargsaumya and sumitmsft June 19, 2025 12:42

The base branch was changed.

@bewithgaurav

bewithgaurav commented Jun 19, 2025

Copy link
Copy Markdown
Collaborator Author

Changed the base branch to main now that previous branch is shipped, will target main now.

@bewithgaurav bewithgaurav merged commit 308c79e into main Jun 19, 2025
6 checks passed
bewithgaurav added a commit that referenced this pull request Jul 4, 2026
the arm64 libodbcinst.2.dylib and libltdl.7.dylib were already @loader_path
(committed that way in #82), so the fix commit left them untouched. re-sign and
commit them too so all six bundled macOS dylibs are the canonical output of a
single configure_dylibs.sh run rather than a mix of #82-era and new signatures.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants